package com.shengzai

import java.io.FileNotFoundException
import scala.io.{BufferedSource, Source}

object Code07Exception {
  def main(args: Array[String]): Unit = {

    try {
      // 当手动抛出异常时，后续的代码都不会执行了
//      throw new RuntimeException()
      val source: BufferedSource = Source.fromFile("data/student.txt")
      // 获取所有行数据，对数据进行打印
      source.getLines().foreach(println)
    } catch {
      // 根据try代码块中的执行顺序捕获异常，如果捕获到，那么会在catch中进行做异常匹配
          // 根据匹配到的异常类型进行执行代码块
      case e: FileNotFoundException => {
        //
        println("当前文件未发现：" + e.getMessage)
      }

      case e: RuntimeException => {
        println("发现运行时异常...."+ e.getMessage)
      }
    } finally {
      println("不管上述代码有没有捕获到异常，都需要在最后进行执行...")
    }

  }
}
